package com.cloudkinto.service.product;

import com.baomidou.mybatisplus.extension.service.IService;
import com.cloudkinto.bo.product.ProductCategoryAddBo;
import com.cloudkinto.bo.product.ProductCategoryQueryBo;
import com.cloudkinto.bo.product.ProductCategoryUpdateBo;
import com.cloudkinto.common.web.PageResult;
import com.cloudkinto.entity.ProductCategoryDo;
import com.cloudkinto.vo.product.ProductCategoryTree;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

/**
 * <p>
 * 产品分类 service接口
 * </p>
 *
 * @author long
 * @since 2024-10-29
 */
public interface ProductCategoryService extends IService<ProductCategoryDo> {


    void add(ProductCategoryAddBo bo);

    void update(ProductCategoryUpdateBo bo);

    int delete(Long id);

    PageResult getListPage(ProductCategoryQueryBo bo);

    List<ProductCategoryTree> getCategoryTree(Long tenantId);

    void importCategory(MultipartFile file, Long tenantId);

    void exportCategory(List<Long> ids, Long tenantId, HttpServletResponse response) throws IOException;
}
